package com.upcode.weighing.vo.pay.payReturn;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

@Data
@EqualsAndHashCode(callSuper=false)
@ApiModel(value = "退费列表Vo",description = "退费列表Vo")
public class PayReturnListVo {
    @ApiModelProperty(value = "退费记录id")
    @JsonSerialize(using= ToStringSerializer.class)
    private Long  id;//id
    @ApiModelProperty(value = "退费批次id")
    @JsonSerialize(using= ToStringSerializer.class)
    private Long  batchId;
    @ApiModelProperty(value = "账单编码")
    private String billCode;
    @ApiModelProperty(value = "项目名称")
    private String projectName;
    @ApiModelProperty(value = "房屋信息")
    private String roomInfo;
    @ApiModelProperty(value = "供能类别")
    private String energyType;
    @ApiModelProperty(value = "年度")
    private String year;
    @ApiModelProperty(value = "房屋面积")
    private String area;
    @ApiModelProperty(value = "缴费金额")
    private Integer payAmount;
    @ApiModelProperty(value = "缴费方式")
    private String payType;
    @ApiModelProperty(value = "缴费通道")
    private String payChannel;
    @ApiModelProperty(value = "开票状态")
    private String invoiceType;
    @ApiModelProperty(value = "缴费人")
    private String payPeople;
    @ApiModelProperty(value = "缴费人手机号")
    private String payPhone;
    @ApiModelProperty(value = "退费类型")
    private String payReturnType;
    @ApiModelProperty(value = "退费金额")
    private Integer returnAmount;
    @ApiModelProperty(value = "审核状态")
    private String auditStatus;
    @ApiModelProperty(value = "退费状态")
    private String returnStatus;
    @ApiModelProperty(value = "登记时间")
    private LocalDateTime registerTime;

    //查询条件
    @ApiModelProperty(value = "查询条件 - 项目id")
    private Long projectId;
    @ApiModelProperty(value = "查询条件 - 楼宇id")
    private Long towerId;
    @ApiModelProperty(value = "查询条件 - 单元id")
    private Long unitId;
    @ApiModelProperty(value = "查询条件 - 房屋名称")
    private String roomName;
    @ApiModelProperty(value = "查询条件 - 年度")
    private String billStartYear;
    @ApiModelProperty(value = "查询条件 - 供能类别")
    private Integer energyTypeId;
    @ApiModelProperty(value = "查询条件 - 缴费通道")
    private Integer payChannelId;
    @ApiModelProperty(value = "查询条件 - 退费类型")
    private Integer payReturnTypeId;
    @ApiModelProperty(value = "查询条件 - 审核状态")
    private Integer auditStatusId;
    @ApiModelProperty(value = "查询条件 - 退费状态")
    private Integer returnId;
    @ApiModelProperty(value = "查询条件 - 登陆人id")
    private Long projectUser;

    //退费时，判断用
    @ApiModelProperty(value = "审核结果 1 审核通过 2 审核不通过")
    private Integer auditResultId;
    @ApiModelProperty(value = "支付类型")
    private Integer payTypeId;

}
